package com.feemanage.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.common.core.page.PageDomain;
import com.feemanage.domain.BizProjectPayout;
import com.feemanage.domain.BudgetSubjectPayout;
import com.feemanage.domain.bo.PayoutDetailsBo;
import com.feemanage.domain.bo.ProjectPayoutBo;
import com.feemanage.domain.vo.BizProjectPayoutVo;
import com.feemanage.domain.vo.ProjectPayoutVo;

import java.util.Collection;
import java.util.List;

public interface IBizProjectPayoutService {

    /**
     * 检索列表
     * @param pageDomain
     * @param payout
     * @return
     */
    IPage<BizProjectPayoutVo> selectList(PageDomain pageDomain, BizProjectPayout payout);

    /**
     * 获取列表信息
     * @param detailsBo
     * @return
     */
    List<BudgetSubjectPayout> getpayoutInfo(PayoutDetailsBo detailsBo);

    /**
     * 新增
     * @param payoutBo
     * @return
     */
    String addProOutFee(ProjectPayoutBo payoutBo);

    /**
     * 编辑
     * @param payoutBo
     * @return
     */
    String editProOutFee(ProjectPayoutBo payoutBo);

    /**
     * 删除
     * @param ids
     * @param isValid
     * @return
     */
    Boolean delProOutFee(Collection<String> ids, Boolean isValid);

    /**
     * 获取详情数据
     * @param payoutBo
     * @return
     */
    ProjectPayoutVo getEditInfo(ProjectPayoutBo payoutBo);

    /**
     * 导出
     * @param pageDomain
     * @param payout
     * @return
     */
    List<BizProjectPayoutVo> selectExportList(PageDomain pageDomain, BizProjectPayout payout);
}
